Date		:	7 juin 1991
		Programme	:	WELLTRIS
		Outils		:	SOFT-ICE
		Protection	:	Mot de passe
		Temps pass�	:       5 heures environ
		Fichier		:	WELLTRIS.EXE
		Soci�t�		:	SPECTRUM HOLOBYTE
		Divers		:
		Origine		:	INDONESIE
		Num�ro		:	084


	Une protection plutot compliqu�e, j'ai bien trouv� l'endroit ou le
	programmeur teste les caract�res entr�s mais apr�s cel� il fait une
	telle mixture que je me perds compl�tement. J'avance donc par petits
	bouts, �tape par �tape jusqu'� la victoire finale. ( que c'est beau ! )

	Tout ce passe en trois �tapes:

	PRELIMINAIRES:

	La touche ENTER est test�e en 0C25:05A2 et la routine de la demande
	du code est appel�e par un CALL en 0C25:1B34 et la moindre modification
	d'un saut fait se planter le programme avec le message:

	ERROR: ESCAPE SEQUENCE 0007

	Etape 1:
	--------

	J'arrive apr�s de longs tatonnements � trouver ou se fait la compa-
	raison des caract�res entr�s;

	B600
	3BC2
	7402	   JZ 60F5  ---> saut qui valide le caract�re compar�.
	C646E9FF

	Ce saut invers� donne une r�ponse correct au test de la demande du
	code. Premier point.
	Mais le soft se plante avec le m�me message plus loin.
	Ce programme n'est pas compact� et tout ce que j'ai pu savoir en
	examinant le fichier avec F3 de NORTON COMMANDER c'est qu'il a �t�
	assembl� et link� par BORLAND.

	Etape 2:
	--------

	La suite logique c'est de suivre le soft CALL apr�s CALL pour voir
	lequel le fait se crasher.
	
	On a en gros la disposition suivante:

	0C25:1B34 E8.... CALL		---->		Demande du code.
	0C25:1B37 E8.... CALL 		---->           Plantage.
	    .
	0C25:1B43
	    .
	0C25:1B4A E8DEEB CALL 072B	---->	        Suite.	

	En d�cortiquant le CALL en 1B37 j'arrive � une s�quence de test dont
	le saut fait afficher le fameux message. J'annule le test par deux
	NOP et HOP j'ai l'image d'entr� du jeu ! Je crois que c'est gagn� mais
	malgr� que toutes les commandes des options du jeu fonctionnent d�s
	que l'on lance le jeu par lui-m�me avec la barre d'espace, rebelote
	le message s'affiche. Apparement il reste encore un peu de travail...

	Dans la s�quence:

	833E921004
	7CCE			--->     9090   NOP 2 fois.
	C70692100000
	E9C501

	Etape 3:
	--------

	C'est dans le CALL qui se trouve en 1B4A que le message fatidique
	s'affiche maintenant. On part � la chasse...
	En utilisant la commande T de SOFT-ICE on rentre dans le CALL et on
	continue par P ( ou F10 ). Dans ce CALL � l'adresse 07CC on trouve
	un second et un troisi�me CALL dont ce dernier se trouve �tre l'auteur
	du message.
	Il est �vident qu'� chaque fois que le message s'affiche il est trop
	tard; il faut rebooter et recommencer puis � l'endroit fatidique il
	faut continuer avec la commande T.
	Je voudrais en profiter ici pour faire quelques louanges aux auteurs
	de SOFT-ICE; en effet celui-ci permet de BOOTER sans que ce dernier
	se volatilise de la m�moire et bien mieux le BOOT se fait sous son
	controle en conservant les points d'arr�ts et toutes les options
	d�finies sous SOFT-ICE avant le BOOT !
	Il est vrai que cel� ne peut ce faire que sur une machine dot�e d'un
	80386/80486/80586 qui fonctionne en mode prot�g�. Le 80286 fonctionne
	�galement en mode prot�g� mais il pr�sente toutefois un l�ger inconv�-
	nient c'est qu'il ne peut plus revenir en mode r�el une fois qu'il se
	trouve en mode prot�g� sans lui faire un m�chant RESET HARD.
	Bien entendu SOFT-ICE se loge dans la m�moire �tendue au-del� des 640k
	du DOS et que de ce fait tout les programmes se chargent � leurs
	adresses r�elles sans interf�rer avec le d�buggeur.

	Revenons en � nos CALL; 
	
	0C25:1B4A E8DEEB CALL 072B

			  CS:072B  
				.
				.
				.
			  CS:07CC  CALL 24FC	 
		          CS:07CE  CALL 0029	---> C'est celui-ci qui
						     affiche le message.

	La premi�re id�e ( c'est souvent la bonne ) est d'effacer ce CALL pour
	voir... Et c'est tout vu, �a marche. N'y croyant pas trop je joue
	pendant 10 minutes pour tester toutes les fonctions; SAVE, SCORE,
	SOUND on/off, Difficult� etc... cel� semble OK.

	Chercher la chaine 50E89FDC4444FF et remplacer E89FDC par 909090.

	FREDDY